package cn.iocoder.yudao.module.system.controller.admin.dept.vo.jd;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

@Schema(description = "提交充值&提取卡密、生产反查接口调用示例（京东调代理商）--响应参数")
@Data
@EqualsAndHashCode(callSuper = false)
@ToString(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class SubmitRechargeResVO {
    //    {
//        "agentOrderNo": "45001",
//            "code": "JDO_200",
//            "jdOrderNo": 10001,
//            "produceStatus": 1,
//            "product": "zr75dzeGdwf4MqR/6Y9oGkGYq0CBSHwhOhyCvEBK18g=",
//            "sign": "c915ab42acdb11d6c9dd559faecef319",
//            "signType": "MD5",
//            "timestamp": "20210208110742"m252413
//    }
    @Schema(description = "代理商订单号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "代理商订单号不能为空")
    private String agentOrderNo;
    @Schema(description = "错误码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "错误码不能为空")
    private String code;
    @Schema(description = "京东订单号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "京东订单号不能为空")
    private Long jdOrderNo;
    @Schema(description = "生产状态", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "生产状态不能为空")
    private Integer produceStatus;
    // todo 需要ase加密
    @Schema(description = "卡密信息", requiredMode = Schema.RequiredMode.REQUIRED)
    private String product;
    @Schema(description = "签名", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "签名不能为空")
    private String sign;
    @Schema(description = "签名方式", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "签名方式不能为空")
    private String signType;
    @Schema(description = "响应时间戳", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "响应时间戳不能为空")
    private String timestamp;
}